Skip to content

issues: record the cross-session concurrency hazards seen on this task - #1513

Merged
BigSimmo merged 1 commit into
mainfrom
claude/ledger-concurrency-notice
Jul 31, 2026
Merged

issues: record the cross-session concurrency hazards seen on this task#1513
BigSimmo merged 1 commit into
mainfrom
claude/ledger-concurrency-notice

Conversation

@BigSimmo

Copy link
Copy Markdown
Owner

Summary

Ledger-only. #155 records the cross-session concurrency hazards that repeatedly cost work during one task, none of which were logged anywhere.

Several agent sessions (this one, a Cursor Agent, and Codex sessions) were editing the same claude/* branches and the same docs/outstanding-issues.md at once. What went wrong:

  • A PR closed unmerged while auto-merge was armed. issues: capture the unreadable-CI token, at-risk worktree work, and the unpushed hook fix #1490 was armed rather than merged, on the mistaken belief its CI verdict was unreadable. Another actor closed it, and the only record of four preservation snapshots went with it — reconstructed later as #152. Arming is not completion.
  • Cross-session pushes caused repeated non-fast-forward rejections on three branches. One rejection was invisible because the push was piped to tail, so the reported exit code was tail's and the push read as successful.
  • scripts/guard-push.mjs correctly refused a racing push with Pushing now races the squash-merge and can orphan this commit, which required disarming auto-merge, pushing, then re-arming. The guard did its job; the workflow around it did not anticipate it.
  • Ledger ids were renumbered underneath in-flight work (#135#141#144), which is the mechanism behind #154.

The practical rules the row carries: merge a green ledger-only PR rather than arming it; confirm a push with git ls-remote rather than the command's exit code; expect ids and row wording to move between reading and writing.

This PR follows its own advice — the push above was verified by ls-remote matching local HEAD, and CI will be read through the Actions endpoint per #151.

Verification

  • npm run check:outstanding-issues153 rows (45 open, 108 archived), unique ids, next-id=156 above the highest, no ids deleted from base 46c2c1e57167
  • npm run docs:check-links1415 repo path references resolve
  • Prettier — clean

Only docs/outstanding-issues.md is touched.

🤖 Generated with Claude Code

#155 logs what repeatedly went wrong while several agent sessions worked the
same branches and the same ledger file: a PR closed unmerged by another actor
while auto-merge was armed (losing its unique content), pushes from other
sessions causing non-fast-forward rejections, one of which was hidden because
the push was piped to tail, the guard-push auto-merge sentinel correctly
refusing a racing push, and ledger ids renumbered underneath in-flight work.

The practical rules: merge a green ledger-only PR rather than arming it, confirm
a push with git ls-remote rather than the command's exit code, and expect ids and
wording to move between reading and writing.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@supabase

supabase Bot commented Jul 31, 2026

Copy link
Copy Markdown

This pull request has been ignored for the connected project sjrfecxgysukkwxsowpy because there are no changes detected in supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@coderabbitai

coderabbitai Bot commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

You’ve reached a temporary PR review limit under our Fair Usage Limits Policy.

Your recent review volume is higher than typical usage, so adaptive limits are currently applied.

Next review available in: 11 minutes

Your organization has reached its usage spending cap. Adjust your spending cap in the billing tab.

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 5a8f879b-ccd6-462e-8393-43452a513600

📥 Commits

Reviewing files that changed from the base of the PR and between 46c2c1e and 3dad8c3.

📒 Files selected for processing (1)
  • docs/outstanding-issues.md

Comment @coderabbitai help to get the list of available commands.

@BigSimmo

Copy link
Copy Markdown
Owner Author

Temporarily closing to preserve the serialized merge queue while #1510 completes exact-head validation. This PR will be reviewed in the next queue slot.

@BigSimmo BigSimmo closed this Jul 31, 2026
@BigSimmo
BigSimmo merged commit 23465d5 into main Jul 31, 2026
23 checks passed
@BigSimmo
BigSimmo deleted the claude/ledger-concurrency-notice branch July 31, 2026 00:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant